#pragma once

#include<iostream>
#include<vector>
#include<functional>

using func_t=std::function<void()>;
//typedef 

class Tool
{
public:
    Tool(){}
    void PushFunc(func_t f)
    {
        _funcs.push_back(f);
    }
    void Execute()
    {
        for(auto&f:_funcs)
        {
            f();
        }
    }
    ~Tool(){}
private:
    std::vector<func_t> _funcs;
};
